package com.deke.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.deke.entity.AclPermission;
import com.deke.system.vo.FenPermissionVo;
import com.deke.system.vo.PermissionVo;
import com.deke.vo.Result;
import org.apache.ibatis.annotations.Param;

import java.io.Serializable;
import java.util.Collection;
import java.util.List;
import java.util.Map;

/**
 * @author ：Username 刘亦辰（59372312@qq.com）
 * @date ：Created in 2022/12/1 19:19
 * @description：
 * @modified By：
 * @version:
 **/
public interface AclPermissionService {
    /**
     * @create by: Username 刘亦辰 
     * @description: 根据用户名查权限 
     * @create time: 2022/12/1 18:14
     * @param   userid
     * @return :  List<Permission>
     **/
    public List<AclPermission> queryPermissionByUserid(String userid);
    
    /**
     * @create by: Username 刘亦辰 
     * @description:  
     * @create time: 2022/12/3 20:33
     * @param null
     * @return :  
     **/
    public Result<List<AclPermission>> queryPermissionByUsername();
    
    //根据角色id  查询权限
    public Result<Map<String, Object>> findPermissionByRoleId(String roleId);

    //角色管理  分配权限
    public Result confirmFenPermission(FenPermissionVo fenPermissionVo);

    //菜单管理  条件查询
    public Result queryByConditionPage(Integer currentPage, Integer pageSize, PermissionVo permissionVo);

    //菜单管理  添加操作
    public Result insert(PermissionVo permissionVo);

    //菜单管理  修改信息
    public  Result update(AclPermission aclPermission);

    //菜单管理  删除
    public Result deleteById(List  idList);

}